package com.cct.digitalarchapi.service;

import com.cct.digitalarchapi.common.Response;
import com.cct.digitalarchapi.pojo.ArchApplication;
import com.cct.digitalarchapi.pojo.DigitalArchMain;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * @FileName DigitalArchMainService
 * @Description  数字档案服务类
 * @Author Created by chenmingzhe
 * @Date 2023/11/19
 **/

public interface DigitalArchMainService {

   Response addArchMain(DigitalArchMain digitalArchMain);

   Response updateCount(String type,int archMainId);

   Response qryAllArchMain(int pageNum,int pageSize);

   Response qryArchMainById(int archMainId);

   Response qryAllArchMainByType(int pageNum,int pageSize ,int accessState,String archState, String archCateCode,
                                 String archDeptCode,String username,String staffCode,String archTitle,
                                 int archPeriod,int visitCount,int borrowCount,String submitYear,String archDeptHotName);

   Response uploadFile(MultipartFile file,String archMainCode);

  Response getSectList(String archDeptCode, String archCateCode);

  Response getArchMainCode(String archDeptCode, String archCateCode,String sect,String year);

  void downLoadFile(String fileUrl, HttpServletResponse response,String archFilesId);

  Response updateArchMainState(int archMainId, int archState,String auditUser);

  Response queryFilesById(String archMainCode,String recid);

  Response getArchMainByCate();

  Response getArchMainByMonth(String archCateCode,String startDate,String endDate);

  Response updateArchMainInfo(int archMainId,String archMainTitle,int archPeriod,String notes);

  String addImportArchMain(DigitalArchMain digitalArchMain,String year,String sect);

  Response getArchMain(String archMainTitle,String username,int archState,int pageNum,int pageSize);

  Response getTypeAndNum();

  Response getArchMainByType(String type,String typeName,int pageSize,int pageNum);

  Response getArchMainByMuchType(String hotPoint,String year,String cateType,int pageSize,int pageNum);

  Response  qryMyDeptArchMain(String deptCode);

  Response qryMyDeptArchMainByType(String deptCode,String year,String hotPoint,String cateName,int pageNum,int pageSize,String archTitle);







}
